package Basicas;


import javax.persistence.*;

@Entity
@Table(name="hospedagens")
@NamedQueries({
	@NamedQuery(name="HospedagemFindByApOcupado",query="SELECT h FROM Hospedagem h where h.apartamentoEscolhido =:valor1 and h.apartamentoEscolhido.situacaoApartamento =:valor2 order by h.codigo desc "),	
	
})

public class Hospedagem extends ObjetoGeral{

	
	@ManyToOne
	@JoinColumn(name="cliente_id")
	private Cliente cliente;
	
	@Enumerated(EnumType.STRING)
	private TipoOcupacao tipoOcupacao;
	
	private TempoOcupacao tempoOcupacao;
	
	@Embedded
	private Consumo consumo;
	
	@ManyToOne
	private Apartamento apartamentoEscolhido;
	
	public Apartamento getApartamentoEscolhido() {
		return apartamentoEscolhido;
	}

	public void setApartamentoEscolhido(Apartamento apartamentoEscolhido) {
		this.apartamentoEscolhido = apartamentoEscolhido;
	}

	@Column(name="valor_do_servico")
	private Double valorServico;	


	public Cliente getCliente() {
		return cliente;
	}

	public void setCliente(Cliente cliente) {
		this.cliente = cliente;
	}

	public Consumo getConsumo() {
		return consumo;
	}

	public void setConsumo(Consumo consumo) {
		this.consumo = consumo;
	}

	public TipoOcupacao getTipoOcupacao() {
		return tipoOcupacao;
	}

	public void setTipoOcupacao(TipoOcupacao tipoOcupacao) {
		this.tipoOcupacao = tipoOcupacao;
	}

	public Double getValorServico() {
		return valorServico;
	}

	public void setValorServico(Double valorServico) {
		this.valorServico = valorServico;
	}

	public TempoOcupacao getTempoOcupacao() {
		return tempoOcupacao;
	}

	public void setTempoOcupacao(TempoOcupacao tempoOcupacao) {
		this.tempoOcupacao = tempoOcupacao;
	}
	
}
